package cn.com.huzo.repository.tech;

import cn.com.huzo.model.entities.tech.CostForecastHeaderEntity;
import huzofw.repository.GenericRepository;

/**
 * 产品成本预测明细表数据访问对象接口。
 *
 * @author 吴旭
 */
public interface CostForecastHeaderRepository extends GenericRepository<CostForecastHeaderEntity, Long> {

    /**
     * 根据给定的标识，取得产品成本预测。
     *
     * @param headerId 产品成本预测标识
     * @param currentUserId 当前用户
     * @param workFlowId 产品成本预测工作流标识
     * @return
     */
    CostForecastHeaderEntity fetchByKey(Long headerId, Long currentUserId, Long workFlowId);

    /**
     * 更新产品成本预测主表更新日期信息。
     *
     * @param headerId 产品成本预测明细表ID
     * @return 影响的行数
     */
    Integer updateLastUpdatedDate(Long headerId);

    /**
     * 得到新的单据号（根据规则自动生成）
     * <p>
     * @return
     */
    String fetchNewBillNo();
}
